package org.easy.eao.spring.hibernate;

import java.util.List;
import java.util.Set;

import org.easy.eao.annotations.Retrieve;
import org.easy.eao.spring.hibernate.model.Exam;
import org.easy.eao.spring.hibernate.model.Person;

public interface RetrieveEao extends RetrieveGenericEao<Exam, Integer, Person, String>{
	
	@Retrieve
	Person single_entity(String id);
	
	@Retrieve(lazy = true)
	Person single_entity_lazy(String id);
	
	@Retrieve
	Person[] variable(String...ids);
	
	@Retrieve
	Exam[] array(Integer[] array);
	
	@Retrieve
	List<Person> list(Set<String> ids);

	@Retrieve
	Set<Exam> set(List<Integer> ids);
}
